#!/usr/bin/env python
# -*- coding:utf-8 -*-
'''
@File    :   reunner.py
@Time    :   2024/11/17 23:20:11
@Author  :   xiangyu Chen
@Version :   1.0
@Contact :   yu112yu@sina.com
@License :   (C)Copyright 2017-2018, Liugroup-NLPR-CASIA
@Desc    :   None
'''

# import unittest

# import os.path

# test_path = "cases"  #指定测试目录
# start_path = os.path.join(os.path.dirname(__file__), test_path)  #连接路径语法
# # print(os.path.dirname(__file__))
# # 1. TestLoader创建套件
# suite1 = unittest.TestLoader()

# # 2. 通过特征匹配出相关用例,比如只匹配test_login的用例
# suite1 = suite1.discover(start_path, 'test_*test.py')
# print('suite1: ' + str(suite1))

# # 3.通过run方法运行该测试套件
# reunner = unittest.TextTestRunner()
# reunner.run(suite1)

# # suite1.loadTestsFromName()

from loguru import logger
import unittest
import allure
# from api.login_demo_api1 import login
from utils.basic_utils import read_yaml, get_file_path, get_path
import pytest
import os

if __name__ == '__main__':
    file_name = get_path('logs', 'vmall.log')
    logger.add(file_name, rotation='8:00', retention='30 days', level="INFO")

    # 1. 使用pytest生成测试报告时需要传递一个列表
    json_dir_path = 'result'
    args_list = ['-s', '-v', 'cases', '--clean-alluredir', '--alluredir', json_dir_path]
    pytest.main(args_list)
    # 2. 使用allure命令生成测试报告 ：allure generate 数据路径文件 -o html路径文件 -c
    html_dir_path = 'report'
    cmd = 'allure generate {} -o {} -c'.format(json_dir_path, html_dir_path)
    os.system(cmd)
    # os.system("allure open {}".format(html_dir_path))
